package com.deyuanyun.pic.ae.controller.dto;

import com.deyuanyun.pic.ae.domain.EmergencyResource;
import com.deyuanyun.pic.ae.domain.Sewer;
import com.deyuanyun.pic.common.util.DateUtil;
import org.springframework.validation.Errors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * E_7管道沿线应急资源信息 创建或者修改 数据传输对象
 */
public class EmergencyResourceEdit extends AEBaseEdit<EmergencyResource> {

    // 应急资源名称
    private String name;
    // 应急资源类别AE_EMERGENCY_RESOURCE_TYPE（政府机构、医疗机构、急救中心、公安队伍、消防单位、供水局、供电局、维抢修队、疏散安置点、其它）
    private String type;
    // 省
    private String province;
    // 市
    private String city;
    // 区（县）
    private String district;
    // 镇（乡）
    private String town;
    //  村（街道）
    private String village;
    // 联系人
    private String contact;
    // 联系方式
    private String telephone;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getDistrict() {
        return district;
    }

    public void setDistrict(String district) {
        this.district = district;
    }

    public String getTown() {
        return town;
    }

    public void setTown(String town) {
        this.town = town;
    }

    public String getVillage() {
        return village;
    }

    public void setVillage(String village) {
        this.village = village;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    public String getTelephone() {
        return telephone;
    }

    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }

    @Override
    public void fromDomain(EmergencyResource domain) {
        // 应急资源名称
        this.name = domain.getName();
        // 应急资源类别AE_EMERGENCY_RESOURCE_TYPE（政府机构、医疗机构、急救中心、公安队伍、消防单位、供水局、供电局、维抢修队、疏散安置点、其它）
        this.type = domain.getType();
        // 省
        this.province = domain.getProvince();
        // 市
        this.city = domain.getCity();
        // 区（县）
        this.district = domain.getDistrict();
        // 镇（乡）
        this.town = domain.getTown();
        //  村（街道）
        this.village = domain.getVillage();
        // 联系人
        this.contact = domain.getContact();
        // 联系方式
        this.telephone = domain.getTelephone();

        super.fromDomain(domain.getId(), domain.getRecorder(), domain.getRecordTime(), domain.getRemarks());
    }

    @Override
    public EmergencyResource toDomain() {

        EmergencyResource emergencyResource = new EmergencyResource();
        // 应急资源名称
        emergencyResource.setName(this.name);
        // 应急资源类别AE_EMERGENCY_RESOURCE_TYPE（政府机构、医疗机构、急救中心、公安队伍、消防单位、供水局、供电局、维抢修队、疏散安置点、其它）
        emergencyResource.setType(this.type);
        // 省
        emergencyResource.setProvince(this.province);
        // 市
        emergencyResource.setCity(this.city);
        // 区（县）
        emergencyResource.setDistrict(this.district);
        // 镇（乡）
        emergencyResource.setTown(this.town);
        //  村（街道）
        emergencyResource.setVillage(this.village);
        // 联系人
        emergencyResource.setContact(this.contact);
        // 联系方式
        emergencyResource.setTelephone(this.telephone);

        // id
        emergencyResource.setId(this.getId());
        // 记录人
        emergencyResource.setRecorder(this.getRecorder());
        // 记录时间
        Date recordTimeTemp = null;
        try {
            recordTimeTemp = DateUtil.allStr2Date(this.getRecordTime());
        } catch (Exception e) {
            e.printStackTrace();
        }
        emergencyResource.setRecordTime(recordTimeTemp);
        // 备注
        emergencyResource.setRemarks(this.getRemarks());

        return emergencyResource;
    }
}